package com.wl.designpattern.template;

/**
 * 模板方法模式
 *
 * AbstractClass(抽象类) templateMethod
 * ConcreteClass(具体实现类) subMethod
 *
 * 优点
 * 提高代码复用性，去除子类中的重复代码。
 * 提高扩展性，不同实现细节放到不同子类中，易于增加新行为
 *
 * 缺点
 * 每个不同的实现都需要定义一个子类，这会导致类的个数的增加，设计更加抽象。
 *
 * android 应用
 * View draw  抽象BaseActivity
 *
 * Created by wangliang on 2021/2/23.
 */
public class Test {
    public static void main(String[] args) {
        System.out.println("派送A");
        Postman postA = new PostA();
        postA.post();

        System.out.println("派送B");
        Postman postB = new PostB();
        postB.post();
    }
}
